package com.example.system.api.service;

import com.example.commons.core.bean.UserInfoRightBean;
import com.example.commons.core.bean.UserInfoRoleBean;
import com.example.commons.core.entity.UserInfo;

import java.util.List;

public interface UserInfoDubboService {
    /**
     * 根据用户id获取用户信息
     *
     * @param userId 用户id
     * @return 用户信息
     */
    UserInfo getById(Long userId);

    /**
     * 根据用户Id获取权限信息
     *
     * @param userId 用户Id
     * @return 用户信息加权限信息
     */
    UserInfoRightBean rightAndUserFindByUserId(Long userId);

    /**
     * 根据用户Id获取角色信息
     *
     * @param userId 用户Id
     * @return 用户信息和角色信息
     */
    UserInfoRoleBean roleAndUserFindByUserId(Long userId);

    /**
     * 用户角色关联根据用户id查询
     *
     * @param userId 用户Id
     * @return 角色列表
     */
    List<Long> userRoleRelationFindByUserId(Long userId);
}
